On Normal Forms and Equivalence for Logic Programs
نویسنده
چکیده
It is known that larger classes of formulae than Horn clauses may be used as logic programming languages. One such class of formulae is hereditary Harrop formulae, for which an operational notion of provability has been studied, and it is known that operational provability corresponds to prov-ability in intuitionistic logic. In this paper we discuss the notion of a normal form for this class of formulae, and show how this may be given by removing disjunctions and existential quantiications from programs. Whilst the normal form of the program preserves operational provability, there are operationally equivalent programs which are not intuitionistically equivalent. As it is known that classical logic is too strong to precisely capture operational provability for larger classes of programs than Horn clauses, the appropriate logic in which to study questions of equivalence is an intermediate logic. We explore the nature of the required logic, and show that this may be obtained by the addition of the Independence of Premise axioms to intuitionistic logic. We show how equivalence in this logic captures the notion of operational provability, in that logically equivalent programs are operationally equivalent. This result suggests that the natural logic in which to study logic programming is a slightly stronger constructive logic than intuitionistic logic.
منابع مشابه
Modular Equivalence for Normal Logic Programs
A Gaifman-Shapiro-style architecture of program modules is introduced in the case of normal logic programs under stable model semantics. The composition of program modules is suitably limited by module conditions which ensure the compatibility of the module system with stable models. The resulting module theorem properly strengthens Lifschitz and Turner’s splitting set theorem (1994) for normal...
متن کاملEliminating Disjunction from Propositional Logic Programs under Stable Model Preservation
In general, disjunction is considered to add expressive power to propositional logic programs under stable model semantics, and to enlarge the range of problems which can be expressed. However, from a semantical point of view, disjunction is often not really needed, in that an equivalent program without disjunction can be given. We thus consider the question, given a disjunctive logic program ,...
متن کاملOn Eliminating Disjunctions in Stable Logic Programming
Disjunction is generally considered to add expressive power to logic programs under the stable model semantics, which have become a popular programming paradigm for knowledge representation and reasoning. However, disjunction is often not really needed, in that an equivalent program without disjunction can be given. In this paper, we consider the question, given a disjunctive logic program, P ,...
متن کاملUniform Equivalence of Logic Programs under the Stable Model Semantics
In recent research on nonmonotonic logic programming, repeatedly strong equivalence of logic programs P and Q has been considered, which holds if the programs P [ R and Q [ R have the same stable models for any other program R. This property strengthens equivalence of P and Q with respect to stable models (which is the particular case for R = ;), and has an application in program optimization. ...
متن کاملStrong equivalence of logic programs under the infinite-valued semantics
We consider the notion of strong equivalence [V. Lifschitz, D. Pearce, A. Valverde, Strongly equivalent logic programs, ACM Transactions on Computational Logic 2(4):526–541, 2001] of normal propositional logic programs under the infinite-valued semantics [P. Rondogiannis, W.W. Wadge, Minimum model semantics for logic programs with negation-as-failure, ACM Transactions on Computational Logic 6(2...
متن کامل